Fedora 15
Sponsored Link

Create Virtual Machine #1
2011/05/25
 
Install GuestOS and create Virtual Machine. This example shows to install Fedora 15.
[1] Install on text mode via network, it's OK on Console or remote connection with Putty and so on. Furthermore, Virtual Machine's images are placed at /var/lib/libvirt/images by default as a Storage Pool, but this example shows to create and use a new Storage Pool.
[root@dlp ~]#
mkdir -p /var/kvm/images
# create a new Storage Pool

[root@dlp ~]#
virt-install \
-n www \
-r 1024 \
-f /var/kvm/images/www.img \
-s 20 \
--vcpus=2 \
--os-type linux \
--os-variant=fedora15 \
--network bridge=br0 \
--nographics \
--location='http://ftp.jaist.ac.jp/pub/Linux/Fedora/releases/15/Fedora/x86_64/os/' \
--extra-args='console=tty0 console=ttyS0,115200n8'
Starting install...
# installation starts
 
For options, read 'man virt-install', there are many options.
-n specify the name of Virtual Machine
-r specify the amount of memories of Virtual Machine
-f specify the location of disks of Virtual Machine
-s specify the amount of disks of Virtual Machine
--vcpus=
specify the virtual CPUs
--os-type
specify types of GuestOS
--network=
specify network types of Virtual Machine. If you' like to use more than 2 Networtk interfaces for virtual machine, add a line like "--network bridge=br1".
--nographics
nographics
--location=
specify location of installation where from
--extra-args=
specify parameters that is set in kernel
[2] Install with text mode, it's the same with common procedure of installation. After finishing installation, reboot first and then login prompt is shown like follwos.
Fedora release 15 (Lovelock)
Kernel 2.6.38.6-26.rc1.fc15.x86_64 on an x86_64 (ttyS0)
localhost.localdomain login:
# login as root
Password:
[root@localhost ~]#
[3] Move to GuestOS to HostOS with Ctrl + ] key.
Move to HostOS to GuestOS with a command 'virsh console (name of virtual machine)'.
[root@localhost ~]#
# push Ctrl + ]

[root@dlp ~]#
# Host's console
[root@dlp ~]#
virsh console www
# move to Guest

Connected to domain www
Escape character is ^]
# Enter
[root@localhost ~]#
# Guest's console
[4] Because after installing GuestOS from network, it is minimum settings, it's useful to save it as a template in order to create new virtual machines later. Please refer next procedure to create a new virtual machine from template below.
[root@localhost ~]#
vi /etc/sysconfig/keyboard
# change

KEYTABLE="
jp106
"
MODEL="
jp106
"
LAYOUT="
jp
"
[root@localhost ~]#
# push Ctrl + ]

[root@dlp ~]#
# Host's console
[root@dlp ~]#
virt-clone --original www --name template --file /var/kvm/images/template.img

Cloning www.img
| 20 GB 01:44
Clone 'template' created successfully.
[root@dlp ~]#
ll /var/kvm/images/template.img
 
# disk image

-rwxr-xr-x 1 root root 21474836480 May 25 22:00 /var/kvm/images/template.img
[root@dlp ~]#
ll /etc/libvirt/qemu/template.xml
 
# xml file

-rw------- 1 root root 1335 May 25 21:58 /etc/libvirt/qemu/template.xml
[5] Set basic initial configuration to GuestOS first before using it.
[6] Define a new Storage Pool
[root@dlp ~]#
mkdir /etc/libvirt/storage

[root@dlp ~]#
vi /etc/libvirt/storage/disk01.xml
 
# create new

<pool type='dir'>
 
# any name

  <name>disk01</name>
  <capacity>0</capacity>
  <allocation>0</allocation>
  <available>0</available>
  <source>
  </source>
  <target>
   
# specify pool directory

    <path>/var/kvm/images</path>
    <permissions>
        <mode>0700</mode>
        <owner>-1</owner>
        <group>-1</group>
    </permissions>
  </target>
</pool>
# define a pool

[root@dlp ~]#
virsh pool-define /etc/libvirt/storage/disk01.xml

Pool disk01 defined from /etc/libvirt/storage/disk01.xml
# start the pool

[root@dlp ~]#
virsh pool-start disk01

Pool disk01 started
# set auto-start

[root@dlp ~]#
virsh pool-autostart disk01

Pool disk01 marked as autostarted
# confirm to show the pool list

[root@dlp ~]#
virsh pool-list

Name
State
Autostart

-----------------------------------------
disk01
active
yes
# confirm to show the details

[root@dlp ~]#
virsh pool-info disk01

Name:
disk01

UUID:
9f05e8d0-15b3-26c4-e79f-2b3acce81403

State:
running

Persistent:
yes

Autostart:
yes

Capacity:
98.43 GB

Allocation:
4.35 GB

Available:
94.08 GB

 
Tweet